package com.eastdigit.system.service;

import com.eastdigit.system.inter.CodeMapper;
import com.eastdigit.system.model.Code;
import com.eastdigit.util.PropertiesUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class SystemService extends BaseService {

    @Autowired
    private CodeMapper codeMapper;

    public JSONObject queryCodes() {
        JSONObject jsonRet = new JSONObject();
        List<Code> list = codeMapper.selectAllCodes();
        for (Code code : list) {
            String codeType = code.getCodeType();
            JSONArray jsonArray = jsonRet.optJSONArray(codeType);

            JSONObject json = new JSONObject();
            json.put("name", code.getCodeName());
            json.put("value", code.getCodeValue());
            if (jsonArray == null) {
                jsonArray = new JSONArray();
                jsonArray.add(json);
                jsonRet.put(codeType, jsonArray);
            } else {
                jsonArray.add(json);
            }
        }
        return jsonRet;
    }

    public JSONArray queryCodeTest() {
        JSONArray jsonArray = new JSONArray();

        JSONObject json = new JSONObject();
        json.put("name", "test1");
        json.put("value", "1");
        jsonArray.add(json);

        JSONObject json2 = new JSONObject();
        json2.put("name", "test2");
        json2.put("value", "2");
        jsonArray.add(json2);
        return jsonArray;
    }

    public JSONObject querySetting() {
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("projectName", PropertiesUtil.getProperty("project.name"));

        return jsonObject;
    }
}
